package multiple_dimession_list;

/**
 * @author : niu niu
 * @version : 1.0.0
 * @date : 2022/10/11 20:36
 */
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main1(String[] args) {
        List<List<String>> 外部list = new ArrayList<>();
        // 外部list 的元素个数现在是 0 个
        System.out.println(外部list.size());  // 0
        // 所以 外部list.get(?) 无论传入的下标是多少，都是报错（下标越界异常）
        // 外部list.get(0);  // 异常

        List<String> 内部list = new ArrayList<>();
        外部list.add(内部list);

        // 外部list 的元素个数现在是 1 个
        System.out.println(外部list.size());  // 1
        // 外部list.get(0) 就是刚放入的 内部list 指向的顺序表对象
        // 外部list.get(0) 的元素个数是 0 个
        System.out.println(外部list.get(0).size());  // 0
        // 外部list.get(0) 不报错，正确
        // 外部list.get(0).get(0) 报错（下标越界异常）
//        System.out.println(外部list.get(0).get(0));  // 异常
    }

    public static void main(String[] args) {
        List<List<String>> list = new ArrayList<>();
        for (int i = 0; i < 5; i++) {
            list.add(new ArrayList<>());
            for (int j = 0; j <= i; j++) {
                String s = String.valueOf(j);
                list.get(i).add(s);
            }
        }
    }
}